import unittest


# 这是定义最简单的函数
def area(x, y):
    return x * y


# *x2是一个可变参数, 但是在方法内部接受到值之后, 将会转换为一个tuple.
def get_max(x1, *x2):
    print(type(x2))
    max_val = x1
    for x in x2:
        if x > max_val:
            max_val = x
    return max_val


def get_init_value(key, value=10086):
    return value


class TestMethodDefine(unittest.TestCase):

    def test_create(self):
        print(area(12, 34))
        print(get_max(13, 22, 34, 65))

    """
    功能: 调用使用了默认参数的函数;
    说明: 
        1. 调用默认参数的函数的方式有以下几种.
    """
    def test_use_default(self):
        print(get_init_value("s1"))
        print(get_init_value("s1", 15577))
        print(get_init_value(key="s1"))
        print(get_init_value(key="s1", value=999))


if __name__ == '__main__':
    unittest.main()
